package com.topisv.tms.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.apache.commons.lang3.builder.ToStringBuilder;

@Entity
@Table(name = "customers")
public class Customers extends IdEntity {

    private static final long serialVersionUID = 1L;

    private CustomerAreaGroup customerAreaGroup;

    @Transient
    public CustomerAreaGroup getCustomerAreaGroup() {
        return customerAreaGroup;
    }

    public void setCustomerAreaGroup(CustomerAreaGroup customerAreaGroup) {
        this.customerAreaGroup = customerAreaGroup;
    }

    private String subStock;// 1减库存，0不减库存

    public String getSubStock() {
        return subStock;
    }

    public void setSubStock(String subStock) {
        this.subStock = subStock;
    }

    private String passBack;// 是否回传运单号1回传，0不回传

    private String startOrdeno;// 起始订单号
    private String packStatus;// 是否打印随箱单

    private String openQm;// 是否回传运单号1回传，0不回传

    private String distributeWarehouseState; // 商家是否启用分仓 0 不启用 1 启用（不启用，所有货物都分配到主仓库）
    private String primeWarehouseCode; // 主仓编码
    private String stockQueryType; // 0 表示使用所有仓库的库存和 1 表示使用报文的仓库库存

    public String getStockQueryType() {
        return stockQueryType;
    }

    public void setStockQueryType(String stockQueryType) {
        this.stockQueryType = stockQueryType;
    }

    public String getPrimeWarehouseCode() {
        return primeWarehouseCode;
    }

    public void setPrimeWarehouseCode(String primeWarehouseCode) {
        this.primeWarehouseCode = primeWarehouseCode;
    }

    public String getDistributeWarehouseState() {
        return distributeWarehouseState;
    }

    public void setDistributeWarehouseState(String distributeWarehouseState) {
        this.distributeWarehouseState = distributeWarehouseState;
    }

    public String getStartOrdeno() {
        return startOrdeno;
    }

    public void setStartOrdeno(String startOrdeno) {
        this.startOrdeno = startOrdeno;
    }

    @Column(name = "pass_back")
    public String getPassBack() {
        return passBack;
    }

    public void setPassBack(String passBack) {
        this.passBack = passBack;
    }

    private String placeStatus;// ht订单流入限制 限制(1),不限制(0)

    @Column(name = "place_status")
    public String getPlaceStatus() {
        return placeStatus;
    }

    public void setPlaceStatus(String placeStatus) {
        this.placeStatus = placeStatus;
    }

    private String cancelUrl;// 取消订单接口

    @Column(name = "cancel_url")
    public String getCancelUrl() {
        return cancelUrl;
    }

    public void setCancelUrl(String cancelUrl) {
        this.cancelUrl = cancelUrl;
    }

    private String sectionPo;// 分仓宝商家

    private String forwardSign;// 中转发标识

    @Column(name = "forward_sign")
    public String getForwardSign() {
        return forwardSign;
    }

    @Column(name = "section_po")
    public String getSectionPo() {
        return sectionPo;
    }

    public void setSectionPo(String sectionPo) {
        this.sectionPo = sectionPo;
    }

    public void setForwardSign(String forwardSign) {
        this.forwardSign = forwardSign;
    }

    private String forwardBatchAddress;// 中转发接口

    @Column(name = "forward_batch_address")
    public String getForwardBatchAddress() {
        return forwardBatchAddress;
    }

    public void setForwardBatchAddress(String forwardBatchAddress) {
        this.forwardBatchAddress = forwardBatchAddress;
    }

    private String startPoint;// 所在地编码

    @Column(name = "start_point")
    public String getStartPoint() {
        return startPoint;
    }

    public void setStartPoint(String startPoint) {
        this.startPoint = startPoint;
    }

    private String startNumber;// 运单号前缀
    private String endNumber;// 运单号后缀

    @Column(name = "start_number")
    public String getStartNumber() {
        return startNumber;
    }

    public void setStartNumber(String startNumber) {
        this.startNumber = startNumber;
    }

    @Column(name = "end_number")
    public String getEndNumber() {
        return endNumber;
    }

    @Column(name = "end_number")
    public void setEndNumber(String endNumber) {
        this.endNumber = endNumber;
    }

    private String ordenoSynchroInf;// varchar(255) DEFAULT NULL COMMENT
    // '订单数据同步接口',

    private String ordenoChartInf;// varchar(255) DEFAULT NULL COMMENT

    @Column(name = "ordeno_synchro_inf")
    public String getOrdenoSynchroInf() {
        return ordenoSynchroInf;
    }

    public void setOrdenoSynchroInf(String ordenoSynchroInf) {
        this.ordenoSynchroInf = ordenoSynchroInf;
    }

    @Column(name = "ordeno_chart_inf")
    public String getOrdenoChartInf() {
        return ordenoChartInf;
    }

    public void setOrdenoChartInf(String ordenoChartInf) {
        this.ordenoChartInf = ordenoChartInf;
    }

    @Column(name = "sku_source_inf")
    public String getSkuSourceInf() {
        return skuSourceInf;
    }

    public void setSkuSourceInf(String skuSourceInf) {
        this.skuSourceInf = skuSourceInf;
    }

    // '获取订单时间报表接口',
    private String skuSourceInf;// varchar(255) DEFAULT NULL COMMENT '获取商品信息接口',

    private String tmsBatchAddress;
    private String tmsBatchAppsecret;
    private String tmsBatchAppkey;

    @Column(name = "tms_batch_appsecret")
    public String getTmsBatchAppsecret() {
        return tmsBatchAppsecret;
    }

    public void setTmsBatchAppsecret(String tmsBatchAppsecret) {
        this.tmsBatchAppsecret = tmsBatchAppsecret;
    }

    @Column(name = "tms_batch_appkey")
    public String getTmsBatchAppkey() {
        return tmsBatchAppkey;
    }

    public void setTmsBatchAppkey(String tmsBatchAppkey) {
        this.tmsBatchAppkey = tmsBatchAppkey;
    }

    @Column(name = "tms_batch_address")
    public String getTmsBatchAddress() {
        return tmsBatchAddress;
    }

    public void setTmsBatchAddress(String tmsBatchAddress) {
        this.tmsBatchAddress = tmsBatchAddress;
    }

    private String areasUsername;

    private String areasPassword;

    @Column(name = "areas_username")
    public String getAreasUsername() {
        return areasUsername;
    }

    public void setAreasUsername(String areasUsername) {
        this.areasUsername = areasUsername;
    }

    @Column(name = "areas_password")
    public String getAreasPassword() {
        return areasPassword;
    }

    public void setAreasPassword(String areasPassword) {
        this.areasPassword = areasPassword;
    }

    private String areasGroupInf;

    @Column(name = "areas_group_inf")
    public String getAreasGroupInf() {
        return areasGroupInf;
    }

    public void setAreasGroupInf(String areasGroupInf) {
        this.areasGroupInf = areasGroupInf;
    }

    private String customerName;

    private String customerCode;

    private int priority;

    private String customerIntro;

    @Column(name = "customer_name")
    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    @Column(name = "customer_code")
    public String getCustomerCode() {
        return customerCode;
    }

    public void setCustomerCode(String customerCode) {
        this.customerCode = customerCode;
    }

    public int getPriority() {
        return priority;
    }

    public void setPriority(int priority) {
        this.priority = priority;
    }

    @Column(name = "customer_intro")
    public String getCustomerIntro() {
        return customerIntro;
    }

    public void setCustomerIntro(String customerIntro) {
        this.customerIntro = customerIntro;
    }

    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }

    public String getPackStatus() {
        return packStatus;
    }

    public void setPackStatus(String packStatus) {
        this.packStatus = packStatus;
    }

    private String email;// 邮箱

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getOpenQm() {
        return openQm;
    }

    public void setOpenQm(String openQm) {
        this.openQm = openQm;
    }

}